home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / lang / lisp / stk-3.002 / stk-3 / STk-3.1 / Src / Makefile.in < prev    next >
Encoding:
Makefile  |  1996-07-21  |  4.1 KB  |  144 lines

  1. #
  2. # Makefile for STk
  3. # Copyright ⌐ 1993-1996 Erick Gallesio - I3S-CNRS/ESSI <eg@unice.fr>
  4. # Permission to use, copy, and/or distribute this software and its
  5. # documentation for any purpose and without fee is hereby granted, provided
  6. # that both the above copyright notice and this permission notice appear in
  7. # all copies and derived works.  Fees for distribution or use of this
  8. # software or derived works may only be charged with express written
  9. # permission of the copyright holder.  
  10. # This software is provided ``as is'' without express or implied warranty.
  11. #
  12. #           Author: Erick Gallesio [eg@unice.fr]
  13. #    Creation date: ??-Sep-1993 ??:??
  14. # Last file update: 21-Jul-1996 22:37
  15. #
  16.  
  17. include ../config.make
  18.  
  19. CFLAGS        = $(STKCFLAGS) $(VERS-OPT) $(MACHINE) $(DYNLOAD) $(TK) $(DFLGS) \
  20.           $(OPTS) $(XINCLUDES) @DEFS@ \
  21.           -I. -I../Tk/generic -I../Tk/$(FLAVOR) -I../Tcl -I../Mp \
  22.            $(XINCLUDES)
  23. #
  24. # Add here your object ('.o') files
  25. #
  26. USER_OBJ    = 
  27.  
  28. #
  29. # Scheme interpreter objects
  30. #
  31. SOBJ         = stk.o slib.o primitives.o boolean.o char.o str.o vector.o\
  32.             gc.o port.o  number.o list.o symbol.o\
  33.           read.o print.o eval.o env.o macros.o syntax.o \
  34.           cont.o io.o sport.o promise.o error.o proc.o keyword.o \
  35.           dump.o address.o dynload.o unix.o toplevel.o argv.o \
  36.           extend.o signal.o trace.o dummy.o \
  37.           stklos.o
  38.  
  39. TCLOBJ        = tcl-lib.o tcl-util.o 
  40. TKOBJ        = tk-main.o tk-glue.o tk-util.o 
  41.  
  42. TKLIB        = ../Tk/$(FLAVOR)/libtk.a
  43. TCLLIB        = ../Tcl/libtcl.a
  44. EVTCLLIB    = ../Tcl/libevtcl.a
  45. MPLIB        = ../Mp/$(MP).a
  46. LIBS        = @LIBS@ $(LIB_DLD) $(LIB_MALLOC)
  47.  
  48. ALLIBS     = $(MPLIB) $(TKLIB) $(TCLLIB) $(EVTCLLIB)
  49. SALLLIBS = $(MPLIB) $(TCLLIB) 
  50.  
  51. default: 
  52.     @echo "You must specify 'STk' or 'Snow'"
  53.  
  54. STk:
  55.     make stk TK="-DUSE_TK"
  56.  
  57. Snow:
  58.     make snow TK="-DNO_TK"
  59.     
  60. dev: 
  61.     make dev-bin TK="-DUSE_TK"
  62.  
  63. tags:
  64.     etags *.[ch] ../Tcl/*.[ch] ../Tk/*.[ch]
  65.  
  66. stk:     userinit.o libstk.a $(ALLIBS)
  67.     /bin/rm -f stk
  68.     $(CC) $(STKLDFLAGS) $(CFLAGS) -o stk userinit.o libstk.a $(ALLIBS) \
  69.           $(XLIBSW) $(LIBS)
  70.  
  71. snow:     userinit.o libsnow.a $(SALLIBS)
  72.     /bin/rm -f snow
  73.     $(CC) $(STKLDFLAGS) $(CFLAGS) -o snow userinit.o libsnow.a $(SALLLIBS)\
  74.           @SNOW_LIBS@ $(LIBS) 
  75.  
  76. dev-bin: userinit.o $(SOBJ) $(USEROBJ) $(TCLOBJ) $(TKOBJ) $(EOBJ) $(ETKOBJ) $(SALLIBS)
  77.     /bin/rm -f stk
  78.     $(CC) $(STKLDFLAGS) $(CFLAGS) -o stk userinit.o $(SOBJ) $(TCLOBJ) \
  79.           $(TKOBJ) $(EOBJ) $(ETKOBJ) $(ALLIBS) $(XLIBSW) $(LIBS)
  80.  
  81. libstk.a: $(SOBJ) $(TCLOBJ) $(TCLOBJ) $(TKOBJ) $(ETKOBJ) $(EOBJ)
  82.     /bin/rm -f libstk.a
  83.     ar rc libstk.a $(SOBJ) $(TKOBJ) $(TCLOBJ) $(ETKOBJ) $(EOBJ)
  84.     $(RANLIB) libstk.a
  85.  
  86. libsnow.a: $(SOBJ) $(TCLOBJ) $(EOBJ)
  87.     /bin/rm -f libsnow.a
  88.     ar rc libsnow.a $(SOBJ) $(TCLOBJ) $(EOBJ)
  89.     $(RANLIB) libsnow.a
  90.  
  91. etags:
  92.     etags *.[ch] ../Tcl/*.[ch] ../Tk/generic/*.[ch] ../Tk/unix/*.[ch]
  93.  
  94. $(MPLIB):
  95.     (cd ../Mp; make $(MP).a)
  96.  
  97. $(TKLIB): 
  98.     (cd ../Tk; make $(TKLIB))
  99.  
  100. $(TCLLIB):
  101.     (cd ../Tk; make $(TKLIB))
  102.  
  103. install:
  104.     @echo "You must specify 'install.stk' or "install.snow'"
  105.  
  106. install.stk: stk
  107.     -if [ ! -d $(bindir) ] ; then mkdir -p $(bindir); fi
  108.     /bin/rm -f $(bindir)/stk $(bindir)/stk-$(VERSION) 
  109.     ln -s $(execdir)/stk $(bindir)/stk-$(VERSION) 
  110.     ln -s $(execdir)/stk $(bindir)/stk 
  111.     -if [ ! -d $(execdir) ] ; then mkdir -p $(execdir); fi
  112.     $(CP) stk $(execdir)
  113.     $(STRIP) $(execdir)/stk
  114.     chmod 0755 $(bindir)/stk-$(VERSION) $(bindir)/stk $(execdir)/stk
  115.  
  116. install.stk.libs:
  117.     -if [ ! -d $(execdir) ] ; then mkdir -p $(execdir); fi
  118.     $(CP) libstk.a $(execdir)
  119.     $(RANLIB) $(execdir)/libstk.a
  120.     -if [ ! -d $(incdir) ] ; then mkdir -p $(incdir); fi
  121.     $(CP) stk.h $(incdir)
  122.  
  123. install.snow: snow
  124.     -if [ ! -d $(bindir) ] ; then mkdir -p $(bindir); fi
  125.     /bin/rm -f $(bindir)/snow-$(VERSION) $(bindir)/snow
  126.     ln -s $(execdir)/snow $(bindir)/snow-$(VERSION) 
  127.     ln -s $(execdir)/snow $(bindir)/snow 
  128.     -if [ ! -d $(execdir) ] ; then mkdir -p $(execdir); fi
  129.     $(CP) snow $(execdir)
  130.     $(STRIP) $(execdir)/snow
  131.     chmod 0755 $(bindir)/snow-$(VERSION) $(bindir)/snow $(execdir)/snow
  132.  
  133. install.snow.libs:
  134.     -if [ ! -d $(execdir) ] ; then mkdir -p $(execdir); fi
  135.     $(CP) libsnow.a $(execdir)
  136.     $(RANLIB) $(execdir)/libsnow.a    
  137.  
  138. clean: 
  139.     @/bin/rm -f  core *.o core config.* \
  140.              stk  libstk.a  stk  run-stk \
  141.              snow libsnow.a snow run-snow
  142.